package org.uc3m.pfc.ui;

import java.util.List;

import org.uc3m.pfc.data.Action;

/**
 * 
 * @author esteban
 *
 */
public interface IActionSelector {

	/**
	 * Select an action to execute.
	 * 
	 * @param deviceName name of the device
	 * @param actions list of actions
	 * @return selected actions
	 */
	String selectAction(final String deviceName, final 
			List<Action> actions);

	/**
	 * Notify a button input in GUI.
	 * 
	 * @param paction action selected. Can be null if nothing is choose.
	 */
	void notifyUserInputButton(final String paction);
	
	/**
	 * Show a message to the user.
	 * 
	 * @param message to show
	 */
	void showMessage(final String message);
	
	/**
	 * Set the types.
	 * 
	 * @param ptypes to set
	 */
	void setTypes(final List<ActionSelectorType> ptypes);
	
	
}
